package demo2;

import java.util.Scanner;

public class Text {
    public static void main8(String[] args) {
        // 异或（^）运算的运算律
    }
    public static void main7(String[] args) {
        // 位运算的优先
    }
    public static void main6(String[] args) {
        // 干掉一个数（n） 二进制表示中最右侧的 1
    }
    public static void main5(String[] args) {
        // 提取一个数（n） 二进制表示中最右侧的 1
//        n & (n - 1)
        Scanner sc = new Scanner(System.in);
        int n = sc.nextInt();
        System.out.println(n & (n - 1));
    }

    public static void main4(String[] args) {
        // 位图的思想 lowbit
//        n & -n
        Scanner sc = new Scanner(System.in);
        int n = sc.nextInt();
        System.out.println(n & (-n));
    }
    public static void main3(String[] args) {
        // 将一个数 n 的二进制表示的第 x 位修改成 0
        Scanner sc = new Scanner(System.in);
        int n = sc.nextInt();
        int x = sc.nextInt();
        System.out.println(n & (~(1 << x)));
    }
    public static void main2(String[] args) {
        // 将一个数 n 的二进制表示的第 x 位修改成 1
        Scanner sc = new Scanner(System.in);
        int n = sc.nextInt();
        int x = sc.nextInt();
        System.out.println(n | (1 << x));
    }
    public static void main1(String[] args) {
        // 给一数 n ，确定他的二进制表示中的第 x 位是 0 还是 1
        Scanner sc = new Scanner(System.in);
        int n = sc.nextInt();
        int x = sc.nextInt();
        System.out.println((n >> x) & 1);
    }
}
